home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Garbo
/
Garbo.cdr
/
mac
/
cdev
/
sludge.sit
/
Source Code
/
State_Storage_Manager.c
< prev
next >
Wrap
Text File
|
1999-10-07
|
51KB
|
901 lines
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ File Name: State_Storage_Manager.c Ñ
Ñ ---------- Ñ
Ñ Ñ
Ñ Copyright ⌐ 1990 Apple Computer, Inc. All Rights Reserved Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This file contains the access routines to the state_storage record Ñ
Ñ of the SLUDGE cdev. This record contains the current state (values)Ñ
Ñ of the SLUDGE cdev. It is saved as a resource of the cdev file Ñ
Ñ when SLUDGE is not active. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
#include "State_Storage_Manager.h"
#include <Dialogs.h>
#include <Resources.h>
#include <Memory.h>
#include <Errors.h>
#include <Devices.h>
#include <Packages.h>
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Set_State_Storage_Recommended_CDEV_Return_Value Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function sets the resource error condition true. Ñ
Ñ Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/25/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_State_Storage_Recommended_CDEV_Return_Value(Handle cdevStorage, long value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->State_Storage_Recommended_CDEV_Return_Value = value;
HUnlock(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Set_Resource_Error_Condition Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function sets the resource error condition true. Ñ
Ñ Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/25/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_Resource_Error_Condition(Handle cdevStorage)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->Allocated_State = false;
((State_Storage_Pointer) *cdevStorage)->Resource_Error_State = true;
HUnlock(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Write_State_Resource Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This command writes the current contents of the state storage to Ñ
Ñ the state storage resource. This command should be called by every Ñ
Ñ routine (except Set_Resource_Error_Condition) that changes the stateÑ
Ñ storage data. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/25/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Write_State_Resource(Handle cdevStorage)
{
short res_error;
short junk;
HLock(cdevStorage);
ChangedResource( cdevStorage);
res_error = ResError();
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ If the resource can not be changed Ñ
Ñ then put up the proper alert, set Ñ
Ñ stae manager error condition, and Ñ
Ñ recommend a CDEV return value. Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
if (res_error != noErr)
{
junk = StopAlert(1,nil);
Set_Resource_Error_Condition(cdevStorage);
Set_State_Storage_Recommended_CDEV_Return_Value(cdevStorage,cdevGenErr);
}
WriteResource(cdevStorage);
HUnlock(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Set_Allocated_Condition Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function sets the allocated condition true. Ñ
Ñ Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/25/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_Allocated_Condition(Handle cdevStorage)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->Allocated_State = true;
((State_Storage_Pointer) *cdevStorage)->Resource_Error_State = false;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ On/Off button manager state routines Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Set_On_Off_Error_Condition Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function sets the On/Off button error condition to the Ñ
Ñ passed Boolean value. Ñ
Ñ Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_On_Off_Error_Condition(Handle cdevStorage, Boolean value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->On_Off_Error_Condition = value;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Get_On_Off_Error_Condition Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This query returns the On/Off button error condition. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Boolean Get_On_Off_Error_Condition(Handle cdevStorage)
{
Boolean rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->On_Off_Error_Condition;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Set_On_Off_Recommended_CDEV_Return_Value Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This command sets the On/Off button's recommended CDEV return value Ñ
Ñ to the passed value. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_On_Off_Recommended_CDEV_Return_Value(Handle cdevStorage, long value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->On_Off_Recommended_CDEV_Return_Value = value;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Get_On_Off_Recommended_CDEV_Return_Value Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This query returns the On/Off button's recommended CDEV return Ñ
Ñ value. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
long Get_On_Off_Recommended_CDEV_Return_Value(Handle cdevStorage)
{
short rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->On_Off_Recommended_CDEV_Return_Value;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: SetUp_State_Storage Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This command allocates the CDEV storage in the passed Handle. Ñ
Ñ Ñ
Ñ If there is enough memory available for the allocation then Ñ
Ñ Allocated is the resulting state, otherwise the resulting state Ñ
Ñ is Nil Storage. Ñ
Ñ Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void SetUp_State_Storage(Handle *cdevStorage)
{
if (Count1Resources('SRES') != 0)
*cdevStorage = Get1Resource('SRES', 0);
else
{
*cdevStorage = NewHandle(sizeof(State_Storage_Record));
if (MemError() != noErr)
*cdevStorage = nil;
else
{
HLock(*cdevStorage);
((State_Storage_Pointer) **cdevStorage)->Sludge_Factor = 0;
AddResource(*cdevStorage, 'SRES', 0, "\015State Storage");
if (ResError() != noErr)
DebugStr("\022AddResource failed");
Write_State_Resource(*cdevStorage);
HUnlock(*cdevStorage);
Set_Allocated_Condition(*cdevStorage);
Set_ONFF_Value(*cdevStorage, false);
}
}
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: State_Storage_Allocated Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This query returns true if the storage in the passed Handle is in Ñ
Ñ the Allocated state or false if it is in the Nil Storage state. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Boolean State_Storage_Allocated(Handle cdevStorage)
{
Boolean rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->Allocated_State;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: State_Storage_Nil Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This query returns true if and only if the storage in the passed Ñ
Ñ Handle is in the Nil storage state. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/25/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Boolean State_Storage_Nil(Handle cdevStorage)
{
return(cdevStorage == nil);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: State_Storage_Resource_Error Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This query returns true if and only if the storage in the passed Ñ
Ñ Handle is in the resource error storage state. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/25/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Boolean State_Storage_Resource_Error(Handle cdevStorage)
{
Boolean rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->Resource_Error_State;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Get_State_Storage_Recommended_CDEV_Return_Value Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This query returns the State Storage manager's recommended CDEV Ñ
Ñ return value. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/25/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
long Get_State_Storage_Recommended_CDEV_Return_Value(Handle cdevStorage)
{
long rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->State_Storage_Recommended_CDEV_Return_Value;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Get_ONFF_Value Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This query returns the value of the ONFF resource. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
short Get_ONFF_Value(Handle cdevStorage)
{
Boolean rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->ONFF_Value;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Function Name: Set_ONFF_Value Ñ
Ñ -------------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This command sets value of the ONFF resource to the passed value. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 7/20/89 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_ONFF_Value(Handle cdevStorage, short value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->ONFF_Value = value;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Set_Sludge_Factor Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function sets the SLUDGE factor to the passed value. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_Sludge_Factor(Handle cdevStorage, int new_value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->Sludge_Factor = new_value;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Increment_Sludge_Factor Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function increments the SLUDGE factor. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Increment_Sludge_Factor(Handle cdevStorage)
{
HLock(cdevStorage);
if (((State_Storage_Pointer) *cdevStorage)->Sludge_Factor < 999)
((State_Storage_Pointer) *cdevStorage)->Sludge_Factor++;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Decrement_Sludge_Factor Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function decrements the SLUDGE factor. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Decrement_Sludge_Factor(Handle cdevStorage)
{
HLock(cdevStorage);
if (((State_Storage_Pointer) *cdevStorage)->Sludge_Factor > 0)
((State_Storage_Pointer) *cdevStorage)->Sludge_Factor--;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Get_Sludge_Factor Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function returns the SLUDGE factor. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
long Get_Sludge_Factor(Handle cdevStorage)
{
long rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->Sludge_Factor;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Set_About_Box_State Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function sets the about box state to true. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_About_Box_State(Handle cdevStorage)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->About_Box_State = true;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Clear_About_Box_State Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function sets the about box state to false. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Clear_About_Box_State(Handle cdevStorage)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->About_Box_State = false;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: In_About_Box_State Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This returns true if the cdev is in the about box state, false Ñ
Ñ otherwise. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Boolean In_About_Box_State(Handle cdevStorage)
{
Boolean rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->About_Box_State;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Set_Original_A_TRAP_Exception_Vector_Value Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function saves the value for the original a-trap exception Ñ
Ñ vector. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_Original_A_TRAP_Exception_Vector_Value(Handle cdevStorage, Ptr value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->Original_A_TRAP_Exception_Vector_Value = value;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Get_Original_A_TRAP_Exception_Vector_Value Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function returns the value for the saved a-trap exception Ñ
Ñ vector. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Ptr Get_Original_A_TRAP_Exception_Vector_Value(Handle cdevStorage)
{
Ptr rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->Original_A_TRAP_Exception_Vector_Value;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Set_Original_JUMP_TRACE_Exception_Vector_Value Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function saves the value for the original a-jump_trace Ñ
Ñ exception vector. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_Original_JUMP_TRACE_Exception_Vector_Value(Handle cdevStorage, Ptr value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->Original_JUMP_TRACE_Exception_Vector_Value = value;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Get_Original_JUMP_TRACE_Exception_Vector_Value Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function returns the value for the saved jump_trace exception Ñ
Ñ vector. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Ptr Get_Original_JUMP_TRACE_Exception_Vector_Value(Handle cdevStorage)
{
Ptr rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->Original_JUMP_TRACE_Exception_Vector_Value;
HUnlock(cdevStorage);
return(rvalue);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Set_Location_Of_Parasite_Resource Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function saves the location of the parasite resource. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
void Set_Location_Of_Parasite_Resource(Handle cdevStorage, Handle value)
{
HLock(cdevStorage);
((State_Storage_Pointer) *cdevStorage)->Location_Of_Parasite_Resource = value;
HUnlock(cdevStorage);
Write_State_Resource(cdevStorage);
}
/*ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
Ñ Ñ
Ñ Identifier: Get_Location_Of_Parasite_Resource Ñ
Ñ ----------- Ñ
Ñ Ñ
Ñ Description Ñ
Ñ ----------- Ñ
Ñ This function returns the value for the saved jump_trace exception Ñ
Ñ vector. Ñ
Ñ Ñ
Ñ History Ñ
Ñ ------- Ñ
Ñ Ñ
Ñ Author Date Description Ñ
Ñ ------------------------------------------------------------------ Ñ
Ñ Kevin McEntee 2/20/90 Original Implementation Ñ
Ñ Ñ
Ñ Ñ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ*/
Handle Get_Location_Of_Parasite_Resource(Handle cdevStorage)
{
Handle rvalue;
HLock(cdevStorage);
rvalue = ((State_Storage_Pointer) *cdevStorage)->Location_Of_Parasite_Resource;
HUnlock(cdevStorage);
return(rvalue);
}